package tools

import (
	"fmt"
	"strconv"
	"time"
)

// nowTimestamp 获取不同长度的时间戳
func (a *Argument) nowTimestamp() {
	parameter := a.Function.Parameter
	length, err := strconv.Atoi(parameter)
	if err != nil {
		return
	}
	now := time.Now().UnixNano()
	nowStr := strconv.Itoa(int(now))
	if length < len(nowStr) {
		nowStr = nowStr[0:length]
	} else {
		for i := 0; i < length-len(nowStr); i++ {
			nowStr = fmt.Sprintf("%v%v", nowStr, "0")
		}
	}
	a.Value = nowStr
}

// nowFormat 获取当前时间，可格式化
func (a *Argument) nowFormat() {
	parameter := a.Function.Parameter
	format := time.Now().Format(parameter)
	a.Value = format
}
